home *** CD-ROM | disk | FTP | other *** search
/ SGI Hot Mix 17 / Hot Mix 17.iso / HM17_SGI / research / lib / obsolete / pm.pro < prev    next >
Text File  |  1997-07-08  |  5KB  |  155 lines

  1. ; $Id: pm.pro,v 1.2 1997/01/15 04:02:19 ali Exp $
  2. ;
  3. ; Copyright (c) 1991-1997, Research Systems, Inc.  All rights reserved.
  4. ;       Unauthorized reproduction prohibited.
  5.  
  6. ;+
  7. ; NAME:
  8. ;    PM
  9. ; PURPOSE:
  10. ;    Perform formatted output of matrices stored in the IMSL/IDL
  11. ;    linear algebra storage scheme to the standard output.
  12. ; CATEGORY:
  13. ;    Linear Algebra
  14. ; CALLING SEQUENCE:
  15. ;    PM, E1, ..., E10
  16. ; INPUTS:
  17. ;    E1, ... E10 - Expressions to be output. These can be scalar or
  18. ;        array and of any type.
  19. ; OUTPUTS:
  20. ;    Output is written to the standard output stream.
  21. ; COMMON BLOCKS:
  22. ;    None.
  23. ; RESTRICTIONS:
  24. ;    No more than 10 expressions can be output. This should be sufficient
  25. ;    for typical use.
  26. ; MODIFICATION HISTORY:
  27. ;    13, September 1991, Written by AB (RSI), Mike Pulverenti (IMSL)
  28. ;-
  29.  
  30. function pm_trans, v
  31. if n_elements(v) lt 2 then return, v
  32. return, transpose(v)
  33. end
  34.  
  35.  
  36.  
  37.  
  38.  
  39. pro PM, E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, $
  40.         E11, E12, E13, E14, E15, E16, E17, E18, E19, E20, format = fmt,$
  41.         title=title
  42.  
  43. on_error, 2        ; Return to caller on error
  44.  
  45. n = n_params()
  46. if n_elements(title) then print, title
  47.  
  48.  
  49. if keyword_set(fmt) then format = fmt else format = ''
  50. case n of 
  51. 1:$
  52. print, pm_trans(e1), $
  53.        format = format
  54.  
  55. 2:$
  56. print, pm_trans(e1), pm_trans(e2), $
  57.        format = format
  58.  
  59. 3:$
  60. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), $
  61.        format = format
  62.  
  63. 4:$
  64. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), $
  65.        format = format
  66.  
  67. 5:$
  68. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  69.        format = format
  70.  
  71. 6:$
  72. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  73.        pm_trans(e6), $
  74.        format = format
  75. 7:$
  76. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  77.        pm_trans(e6), pm_trans(e7), $
  78.        format = format
  79.  
  80. 8:$
  81. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  82.        pm_trans(e6), pm_trans(e7), pm_trans(e8), $
  83.        format = format
  84.  
  85. 9:$
  86. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  87.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), $
  88.        format = format
  89. 10:$
  90. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  91.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  92.        format = format
  93. 11:$
  94. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  95.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  96.        pm_trans(e11), $
  97.        format = format
  98. 12:$
  99. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  100.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  101.        pm_trans(e11), pm_trans(e12), $
  102.        format = format
  103. 13:$
  104. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  105.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  106.        pm_trans(e11), pm_trans(e12), pm_trans(e13), $
  107.        format = format
  108. 14:$
  109. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  110.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  111.        pm_trans(e11), pm_trans(e12), pm_trans(e13), pm_trans(e14), $
  112.        format = format
  113. 15:$
  114. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  115.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  116.        pm_trans(e11), pm_trans(e12), pm_trans(e13), pm_trans(e14), pm_trans(e15), $
  117.        format = format
  118. 16:$
  119. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  120.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  121.        pm_trans(e11), pm_trans(e12), pm_trans(e13), pm_trans(e14), pm_trans(e15), $
  122.        pm_trans(e16), $
  123.        format = format
  124. 17:$
  125. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  126.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  127.        pm_trans(e11), pm_trans(e12), pm_trans(e13), pm_trans(e14), pm_trans(e15), $
  128.        pm_trans(e16), pm_trans(e17), $
  129.        format = format
  130. 18:$
  131. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  132.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  133.        pm_trans(e11), pm_trans(e12), pm_trans(e13), pm_trans(e14), pm_trans(e15), $
  134.        pm_trans(e16), pm_trans(e17), pm_trans(e18), $
  135.        format = format
  136. 19:$
  137. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  138.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  139.        pm_trans(e11), pm_trans(e12), pm_trans(e13), pm_trans(e14), pm_trans(e15), $
  140.        pm_trans(e16), pm_trans(e17), pm_trans(e18), pm_trans(e19), $
  141.        format = format
  142. 20:$
  143. print, pm_trans(e1), pm_trans(e2), pm_trans(e3), pm_trans(e4), pm_trans(e5), $
  144.        pm_trans(e6), pm_trans(e7), pm_trans(e8), pm_trans(e9), pm_trans(e10), $
  145.        pm_trans(e11), pm_trans(e12), pm_trans(e13), pm_trans(e14), pm_trans(e15), $
  146.        pm_trans(e16), pm_trans(e17), pm_trans(e18), pm_trans(e19), pm_trans(e20), $
  147.        format = format
  148. else:$
  149.       if (n gt 20) then $
  150.           message, 'Too many arguments sent to PM.  Maximum allowed is twenty'
  151. endcase
  152.  
  153.  
  154. end
  155.